package com.common.enums;

/**
 * @className: VehicleModeFlag
 * @description: 定义 MAVLink 车辆模式标志枚举
 * @author: Kuangkeli
 * @date: 2024/07/01 11:09
 **/

public enum VehicleModeFlag {

    VEHICLE_MODE_FLAG_CUSTOM_MODE_ENABLED(1),   /* 0b00000001 */
    VEHICLE_MODE_FLAG_TEST_ENABLED(2),          /* 0b00000010 */
    VEHICLE_MODE_FLAG_AUTO_ENABLED(4),          /* 0b00000100 */
    VEHICLE_MODE_FLAG_GUIDED_ENABLED(8),        /* 0b00001000 */
    VEHICLE_MODE_FLAG_STABILIZE_ENABLED(16),    /* 0b00010000 */
    VEHICLE_MODE_FLAG_HIL_ENABLED(32),          /* 0b00100000 */
    VEHICLE_MODE_FLAG_MANUAL_INPUT_ENABLED(64), /* 0b01000000 */
    VEHICLE_MODE_FLAG_SAFETY_ARMED(128),        /* 0b10000000 */
    VEHICLE_MODE_FLAG_ENUM_END(129);            /* 保留枚举结束标志 */

    private final int value;

    VehicleModeFlag(int value) {
        this.value = value;
    }

    public int getValue() {
        return value;
    }
}

